When a customer purchases a new computer system, it is a problem to populate the customer's new computer system with all of the contents of the customer's prior computer system and to ensure that the customer's personalizations of the programs and interfaces are not lost in the transfer. Typically, the customer purchases a new computer system and orders a suite of programs from the vendor, which programs are loaded on the new computer system at the vendor's distribution site. The new computer system then is delivered to the customer, who must then load all of the customer data, device drivers, program preferences, personalizations, and file directory structures, as well as other programs that were not purchased from the vendor but were resident on the customer's old computer system.
Loading the old programs requires that the customer locate the original program disks that were received when the old program was purchased, load the contents of these disks on to the new computer system, then update these programs to the latest version, typically via a connection to the program distributor's WEB site on the Internet. In addition, all of the customer files must be transferred from the memory of the old computer system to the new computer system, typically by transferring these files from the old computer to a rewritable media, such as a portable memory device, and loading the contents of the portable memory device on to the customer's new computer system. This process is repeated numerous times until the contents of the memory of the customer's old computer system are transferred to the new computer system. Furthermore, the customer must manually select the device drivers, program preferences, personalizations, and file directory structures that were in effect on the customer's old computer system. This process is laborious, time consuming, subject to errors in missing customer files, and subject to difficulties encountered in relocating old program files to the new computer system.
Some computer systems make use of attached data backup systems to store a copy of the data that is stored in the computer memory and updates thereto for eventual retrieval to restore data that is lost from or corrupted in the computer system memory. However, the use of these existing data backup systems is laborious and can be confusing to the casual customer. Thus, the use of these data backup systems can reduce the complexity of the customer file transfer to the new computer system; however, compatability problems may be encountered which renders this process ineffective.
In addition, existing data backup systems (including both hardware and software) fail to ensure that the customer can simply plug in to the computer system to “back-up” the data stored therein, and also enable recovery of a revision of a file from a point-in-time, and enable all of the hard disk(s) in the computer system to be restored to a point-in-time. Existing data backup systems fail to efficiently track and store the state of multiple file systems over time, while allowing for correct disk-level and file-level restoration, to a point-in-time, without storing a significant amount of redundant data. These data backup systems require the customer to learn new technology, understand the file system of the computer system, learn how to schedule data backup sessions, and learn new controls that must be used for this new functionality. Furthermore, the restoration of lost files is difficult using these data backup systems.
Thus, there is presently no system which can populate a customer's new computer system with all of the contents of the customer's prior computer system and can ensure that the customer's data, programs, device drivers, program preferences, personalizations, and file directory structures are not lost in the transfer.